﻿using Medianamik.Core;
using Medianamik.Core.DAL.Repositories;
using Medianamik.UI.Web.Shop.Data;
using Medianamik.UI.Web.Shop.Data.Repositories;
using Medianamik.UI.Web.MVP.Presentation;

namespace Medianamik.UI.Web.Shop.Presentation.Presenters
{
    public class ShippingListPresenter<T, TView> : ModulePresenterWithGrid<T, TView,
        IShippingBaseRepository<T>, INodeTypeRepository, IMedianamikRepository<IMedianamikDTOWithName>> 
        where T : class, IShippingBase
        where TView : class, IShippingList
    {
        public ShippingListPresenter(TView view, IShippingBaseRepository<T> shippingBaseRepository,
            INodeTypeRepository nodeTypeRepository, IMedianamikRepository<IMedianamikDTOWithName> baseTypeRepository)
            : base(view, shippingBaseRepository, nodeTypeRepository, baseTypeRepository)
        {

        }
    }

    public class ShippingListPresenter : ShippingListPresenter<ShippingBase, IShippingList>
    {
        public ShippingListPresenter(IShippingList view, IShippingBaseRepository<ShippingBase> shippingBaseRepository, INodeTypeRepository nodeTypeRepository, IMedianamikRepository<IMedianamikDTOWithName> baseTypeRepository) : base(view, shippingBaseRepository, nodeTypeRepository, baseTypeRepository)
        {
        }
    }
}
